package cn.hotel.service;

import cn.hotel.mapper.HouseTypeDao;
import cn.hotel.mapper.HouseTypeDaoImpl;
import cn.hotel.pojo.HouseType;
import cn.hotel.utlis.ResultMapUtil;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class HouseTypeServiceImpl implements HouseTypeService{
private HouseTypeDao houseTypeDao = new HouseTypeDaoImpl();
    @Override
    public List<HouseType> getHouseTypeList(String houseType, int currentIndex, int pageSize) {
       //根据当前页计算起始位置
        int index = (currentIndex - 1) * pageSize;
        List<HouseType> houseTypeList = houseTypeDao.getHouseTypeList(houseType,index,pageSize);

        return houseTypeList ;
    }

    @Override
    public int getCount(String houseType) {

        int count = 0;
        try {
            count = houseTypeDao.getCount(houseType);
        }catch (Exception e){
            e.printStackTrace();
        }
        return count;
    }

    @Override
    public Map<String, Object> addHouseType(HouseType houseType) {
        return houseTypeDao.addHouseType(houseType)>0 ?
                ResultMapUtil.success("添加成功")
                : ResultMapUtil.error("添加失败");

    }

    @Override
    public Map<String, Object> deleteHouseType(String houseType) {
        Map<String ,Object> houseTypes = new HashMap<>();

        try {
            int num = houseTypeDao.deleteHouseType(houseType);
            if(num > 0){
                houseTypes.put("flag","1");
                houseTypes.put("mag","删除成功");
            }else {
                houseTypes.put("flag","0");
                houseTypes.put("mag","删除失败");
            }
        } catch (Exception exception) {
            exception.printStackTrace();
            houseTypes.put("flag","-1");
            houseTypes.put("mag","程序异常");
        }
        return houseTypes;
    }

    @Override
    public Map<String,Object> revampHouseType(HouseType houseType) {
        int resultSet = houseTypeDao.revampHouseType(houseType);
        try {
            if (resultSet > 0){
                Map<String,Object> revampMap = ResultMapUtil.success("修改成功!");
                revampMap.put("data",resultSet);
                return revampMap;
            }else {
                return ResultMapUtil.error("修改失败!");
            }
        }catch (Exception e){
            e.printStackTrace();
            return ResultMapUtil.expection();
        }
    }
    }

